Coding is employed in communications systems for a variety of purposes. Among these are the improvement of transmission reliability, DC balance, the detection of errors, and the correction of errors. U.S. Pat. Nos. 6,198,413 and 6,614,369, both to Albert X. Widmer, describe the principles for the construction of a 16B16BR transmission code which is partitioned into a 9B10B and a 7B8B part. For high speed bus applications as described in U.S. Pat. No. 6,978,416, also to Albert X. Widmer, the compatibility with an 8-bit byte format is often not an advantage or irrelevant for very wide busses with dozens of parallel lines. The higher coding efficiency and other features may outweigh the lower complexity of the traditional 8B10B code, known, for example, from Albert X. Widmer, The ANSI Fibre Channel Transmission Code, IBM Research Report RC 18855, 4/23/93, and U.S. Pat. Nos. 4,486,739, of Franaszek and Widmer, and 6,977,599, of Albert X. Widmer.
Various versions of 7B8B codes have been used by British Telecom, as known from J. R. Alexander and A. S. T. Nagia, “Transformation of binary coded signals into a form having lower disparity”, British Patent 1540617, 14 Feb. 1979, and P. Cochlane, R. Brooks, and R. Dawes, “A High Reliability 565 Mbit/s Trunk Transmission System, “IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. SAC-4, No. 9, December 1986, pp. 1396-1403, and by Standard Telephones and Communications plc, as known from R. L. Williamson and M. Chown, “The NL1 Submarine System,” IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, VOL. SAC-1, No. 3, April 1983, pp. 454-458. A coding table for one such version is listed in A. J. Sharland and A. Stevenson, “A simple in-service error detection scheme based on the statistical properties of line codes for optical fibre Systems,” INT. J. ELECTRONICS, 1983, VOL. 55, NO. 1, 3-33. It is not suitable for implementation with combinational logic elements. A good general introduction to this kind of line coding is given in K. W. Cattermole, “Principles of digital line coding,” INT. J. ELECTRONICS, 1983, VOL. 55, NO. 1, 3-33, and in R. M. Brooks and A. Jessop, “Line coding for optical fibre systems”, INT. J. ELECTRONICS, 1983, VOL. 55, NO. 1, 81-120.
It would be desirable to provide both a 9B10B coding implementation and a 7B8B coding implementation that can be efficiently implemented in hardware.